package com.qfedu.springmvc02.controller;

import com.qfedu.springmvc02.entity.User;
import org.springframework.web.bind.annotation.*;

import java.util.Arrays;
import java.util.List;

/**
 * @author zhang
 * @Title: commonValidateAdd
 * @date : 2022/5/6 11:40
 */
@RestController
public class RestfullController {

    //查询所有用户
    @GetMapping("/users")
    public List<User> selectAll(){
        return Arrays.asList(User.builder().id(1).name("张三").password("123").build(),
        User.builder().id(1).name("张四").password("1234").build(),
        User.builder().id(1).name("张五").password("12345").build(),
        User.builder().id(1).name("张六").password("123456").build());
    }

    // 查询单个用户
    @GetMapping("/users/{id}")
    public User selectOne(@PathVariable("id") Integer id){
        // 使用建造者模式创建对象，可以使用链式编程赋值
        return User.builder().id(1).name("zhangsan").password("123").build();
    }

    //新增用户
    @PostMapping("/users")
    public String add(@RequestBody User user){
        // %s 表示字串
        System.out.printf("新增用户%s",user);
        return "{code:1,success:true}";
    }

    // 修改用户
    @PutMapping("/users")
     public String update(@RequestBody User user){
        System.out.printf("修改用户%s", user);
        return "{code:1,success:true}";
    }

    // 根据ID删除用户
    @DeleteMapping("/users/{id}")
    public String delete(@PathVariable("id") Integer id){
        System.out.printf("删除ID是%d的用户\r\n",id);
        return "{code:1,success:true}";
    }
}
